package edu.towson.cosc.cosc455.kchmura.compiler;

import java.util.ArrayList;

/**
 * 
 * @author kchmur1
 * 
 * This class contains all of the lolcode tags.
 */
public class LexicalTokens {
	static ArrayList<String> tokenLookupArray;
	
	final static String DOC_BEGIN = "#HAI";
	final static String DOC_END = "#KTHXBYE";
	final static String HEAD_BEGIN = "#MAEK HEAD";
	final static String HEAD_END = "#OIC";
	final static String COMMENT_BEGIN = "#OBTW";
	final static String COMMENT_END = "#TLDR";
	final static String TITLE_BEGIN = "#GIMMEH TITLE";
	final static String TITLE_END = "#MKAY";
	final static String PARAGRAPH_BEGIN = "#MAEK PARAGRAF";
	final static String PARAGRAPH_END = "#OIC";
	final static String BOLD_BEGIN = "#GIMMEH BOLD";
	final static String BOLD_END = "#MKAY";
	final static String ITALICS_BEGIN = "#GIMMEH ITALICS";
	final static String ITALICS_END = "MKAY";
	final static String LIST_BEGIN = "MAEK LIST";
	final static String LIST_END = "#OIC";
	final static String ITEM_BEGIN = "#GIMMEH ITEM";
	final static String ITEM_END = "#MKAY";
	final static String NEWLINE = "#GIMMEH NEWLINE";
	final static String SOUNDS_BEGIN = "#GIMMEH SOUNDZ";
	final static String SOUNDS_END = "#MKAY";
	final static String VIDEO_BEGIN = "#GIMMEH VIDZ";
	final static String VIDEO_END = "#MKAY";
	final static String VARIABLE_BEGIN = "#I HAS A";  
	final static String VARIABLE_VALUE = "#ITZ"; 
	final static String VARIABLE_VISIBLE = "#VISIBLE";  
	final static String VARIABLE_END = "#MKAY";     


        /**
         * This is a method to populate an array that can be used to check if a token is valid or not.
         */
        public static void TokenArrayMethod() {
		tokenLookupArray.add(TITLE_BEGIN);
		tokenLookupArray.add(TITLE_END);
		tokenLookupArray.add(BOLD_BEGIN);
		tokenLookupArray.add(BOLD_END);
		tokenLookupArray.add(PARAGRAPH_BEGIN);
		tokenLookupArray.add(PARAGRAPH_END);
		tokenLookupArray.add(COMMENT_BEGIN);
		tokenLookupArray.add(COMMENT_END);
		tokenLookupArray.add(VARIABLE_BEGIN);
		tokenLookupArray.add(ITALICS_BEGIN);
		tokenLookupArray.add(ITALICS_END);
		tokenLookupArray.add(ITEM_BEGIN);
		tokenLookupArray.add(ITEM_END);
		tokenLookupArray.add(LIST_BEGIN);
		tokenLookupArray.add(LIST_END);
		tokenLookupArray.add(NEWLINE);
		tokenLookupArray.add(SOUNDS_BEGIN);
		tokenLookupArray.add(SOUNDS_END);
		tokenLookupArray.add(VARIABLE_VISIBLE);
		tokenLookupArray.add(VARIABLE_END);
		tokenLookupArray.add(VARIABLE_VALUE);
		tokenLookupArray.add(VIDEO_BEGIN);
		tokenLookupArray.add(VIDEO_END);	
}
	
}


